IainBall.ar.io Permasite Launch

As a Gnostic who is preoccupied with resistance to erasure, I am proud to announce the launch of

https://iainball.ar.io/ on Arweave's decentralised permaweb.

Version at launch: 30zFLH4mggqURcK_WJLoAZeRjJjXLRYB14o4pWIeb44

Iain Ballhttps://35gmkld6e2bavfcfyk7vrexiaglzddey24wrmaoxri4kkyq6n6ha.arweave.net
Iain Ball

The idea that one should keep paying expensive and fragile subscriptions for centralised server hosting, CDNs, and renting domain names seems insane in 2026 when technology like Arweave exists.

The vulnerabilities and constraints of Web 2.0 only become apparent when you start thinking long term about resilience, sovereignty, decentralisation, smart contracts, and digital artefacts. Web3 has its vulnerabilities too, especially when the focus is on attention, hype, and short term economic gain, not to mention the scams, security vulnerabilities, rug pulls, and short lives of platforms.

That is why longterm thinking and fortitude is a better bet.

The site is a near mirror of iainball.com because everything important was there, and should therefore be on the permaweb instead of fragile servers that need ongoing paid subscriptions. Only the info section is stripped down and the audio section currently omitted (I'm in the process of archiving and tokenising those properly, which is a big job, and I've been busy.)

The legacy .com site will continue for now. I'd rather not pay for hosting anymore, but it ranks in Google and is SEO'd with high "domain authority." If Web3 and the permaweb continue to grow, I'm hoping to get to the stage where I no longer need a .com at all.


Here's the pipeline I used to create it

  • Buy an ArNS name http://arns.ar.io/ (using Solana + ARIO)

  • From here you can manage the asset and set a target ID

  • Upload all media to Arweave via https://console.ar.io/ including html pages with the embedded Arweave hashes.

  • Write a path manifest as a JSON file for the site, e.g...

{
  "manifest": "arweave/paths",
  "version": "0.1.0",
  "index": { "path": "index.html" },
  "paths": {
    "index.html": { "id": "HASH" },
    "info.html": { "id": "HASH" }
  }
}
  • Then you upload this file to Arweave as well. Transaction Content-Type must be application/x.arweave-manifest+json

  • Console doesn't let you set content type, so I asked Grok to design me a simple web page that I hosted locally to connect my Solana wallet and upload the JSON file with the correct content type tagged (you can also use Terminal or equivalent for this.)

  • Then you set the path manifest hash as target ID for your ArNS name.

  • Each time you update a page on the site you need to re-upload the html to Console, add the new hash in the manifest, re-upload the manifest, and set the new Target ID.

  • This might seem like a bit of a fuss, but its well worth it if you actually care about permanence and affordable decentralised cloud storage. + AI tools make the whole process fast and easy.

  • For example you can build a site update tool that inputs the hashes of only the html pages you are updating on the site, and then outputs an updated json. You then upload that to Arweave and set the new target ID. This streamlines the whole process.


Iain. September 2026.